//
//  iphone_test2ViewController.m
//  iphone_test2
//
//  Created by Yang Lu on 3/31/12.
//  Copyright 2012 __MyCompanyName__. All rights reserved.
//

#import "iphone_test2ViewController.h"
#import "CJSONDeserializer.h"

@implementation iphone_test2ViewController

@synthesize tfEmail, tfPassword;


- (IBAction)buttonPressed:(id)sender{
	
	//hardcoded for server address
	//NSString *serverAddress = @"http://23.21.156.57/testproject/api/";
	NSString *serverAddress = @"http://192.168.0.4:8000/api/calc?";
	
	NSString *myURL = [ NSString stringWithFormat: @"%@email=%@&password=%@", serverAddress, tfEmail.text, tfPassword.text];
	NSLog(@"myURL:%@", myURL);
	
	NSData *jsonData = [NSData dataWithContentsOfURL: [NSURL URLWithString:myURL]]; 
	NSString *jsonString = [[NSString alloc] initWithBytes: [jsonData bytes] length:[jsonData length] encoding: NSUTF8StringEncoding];
	
	NSError *error = nil;
	
	//parse json to dictionary
	NSDictionary *dictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:(NSData *)jsonData error:(NSError **)&error];
	for(NSString *key in dictionary)
	{
		NSLog(@"%@: %@", key, [dictionary objectForKey:key]);
	}
	
	//parse json to object	
	id theObject = [[CJSONDeserializer deserializer] deserialize:jsonData error:&error];
	NSLog(@"%@", theObject);

	[jsonString release];
	
}

/*
// The designated initializer. Override to perform setup that is required before the view is loaded.
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}
*/

/*
// Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView {
}
*/


/*
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    [super viewDidLoad];
}
*/


/*
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
*/

- (void)didReceiveMemoryWarning {
	// Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];
	
	// Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
	// Release any retained subviews of the main view.
	// e.g. self.myOutlet = nil;
}


- (void)dealloc {
	[tfEmail release];
	[tfPassword release];	
    [super dealloc];
}

@end
